CREATE PROC [dbo].[KasriEzafi]
    @AutoID VARCHAR(10),
    @Database VARCHAR(5),
    @Code VARCHAR(100),
    @Qty VARCHAR(50),
    @Anbar VARCHAR(5),
    @User VARCHAR(3),
    @Qty2 VARCHAR(6) = '0'
AS
DECLARE @executecommand VARCHAR(MAX);
DECLARE @SQLString NVARCHAR(MAX);
SET @Code = REPLACE(@Code,'','')
IF LEN(@Code) >= 53
SET @Code = SUBSTRING(@Code,4,13)

SET @SQLString
    = N'select  @GoodsCode = k_code from [' + @Database + N'].[dbo].[TblBasket_Kala] where (K_Code_B = @InputCode)';
EXECUTE sp_executesql @SQLString,
                      N'@InputCode Varchar(15) ,  @GoodsCode varchar(15) OUTPUT',
                      @InputCode = @Code,
                      @GoodsCode = @Code OUTPUT;
IF EXISTS
(
    SELECT 1
    FROM dbo.tblPda D
        JOIN dbo.tblHpda H
            ON H.AutoID = D.AutoID
    WHERE H.Kind_Flag = 4
          AND D.A_Code = @Anbar
          AND
          (
              K_Code = @Code
              OR Barcode = @Code
          )
)
BEGIN


    (SELECT UserId
     FROM dbo.tblHpda H
         JOIN dbo.tblPda D
             ON H.AutoID = D.AutoID
     WHERE (
               D.K_Code = @Code
               OR D.Barcode = @Code
           )
           AND H.Kind_Flag = 4);
    RETURN;


END;
ELSE
BEGIN
    SET @executecommand
        = 'INSERT INTO tblpda (AutoID,K_Code,Barcode ,K_Qty,A_Code,Status,Name1,Price_Kharid,Price_Forosh,Price_Omdeh,Qty2)
Select ''' + @AutoID + ''', G.K_Code , G.Barcode , ''' + @Qty + ''' , ''' + @Anbar
          + ''',''11'', G.Name1 ,   W.Price_Kharid , W.Price_Forosh ,W.Price_Omdeh , ''' + @Qty2 + ''' 
From  [' + @Database + '].[dbo].[KalaId] G
Join [' + @Database + '].[dbo].[Anbar] W On W.A_Code = ''' + @Anbar
          + ''' and W.K_Code = G.K_Code
WHERE ( G.K_Code = ''' + @Code + ''' ) OR (G.Barcode = ''' + @Code + ''')';

    --    PRINT @executecommand;
    EXEC (@executecommand);
END;



